package br.ufms.odontologico.model;

import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;

@Entity
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
public class Funcionario extends Pessoa {
	
	private String carteiraDeTrabalho;
	private Float salario;
	
    @ManyToMany(
            targetEntity=Ocupacao.class,
            cascade={CascadeType.PERSIST, CascadeType.MERGE}
        )
        @JoinTable(
            name="pessoa_ocupacao",
            joinColumns=@JoinColumn(name="Pessoa_idPessoa",referencedColumnName="idPessoa"),
            inverseJoinColumns=@JoinColumn(name="Ocupacao_cbo",referencedColumnName="cbo")
        )
	private List<Ocupacao>profissoes;

	public String getCarteiraDeTrabalho() {
		return carteiraDeTrabalho;
	}

	public void setCarteiraDeTrabalho(String carteiraDeTrabalho) {
		this.carteiraDeTrabalho = carteiraDeTrabalho;
	}

	public Float getSalario() {
		return salario;
	}

	public void setSalario(Float salario) {
		this.salario = salario;
	}

	public List<Ocupacao> getProfissoes() {
		return profissoes;
	}

	public void setProfissoes(List<Ocupacao> profissoes) {
		this.profissoes = profissoes;
	}



}
